package com.whw.fy.service.impl;

import com.whw.fy.entity.Message;
import com.whw.fy.entity.Staff;
import com.whw.fy.mapper.StaffMapper;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.List;
import com.whw.fy.entity.TeachingTodo;
import com.whw.fy.mapper.TeachingTodoMapper;
import com.whw.fy.service.TeachingTodoService;
@Service
public class TeachingTodoServiceImpl implements TeachingTodoService{

    @Resource
    private TeachingTodoMapper teachingTodoMapper;
    @Resource
    private StaffMapper staffMapper;

    @Override
    public Message deleteByPrimaryKey(Integer teachingTodoId) {
        return teachingTodoMapper.deleteByPrimaryKey(teachingTodoId)>0?Message.success(null):Message.fail(null);
    }

    @Override
    public Message insertSelective(TeachingTodo record) {
        return teachingTodoMapper.insertSelective(record)>0?Message.success(null):Message.fail(null);
    }

    @Override
    public Message selectByPrimaryKey(Integer teachingTodoId) {
        return Message.success(null).add(teachingTodoMapper.selectByPrimaryKey(teachingTodoId));
    }

    @Override
    public Message updateByPrimaryKeySelective(TeachingTodo record) {
        return teachingTodoMapper.updateByPrimaryKeySelective(record)>0?Message.success(null):Message.fail(null);
    }

    @Override
    public Message selectAll() {
        List<TeachingTodo> teachingTodoList = teachingTodoMapper.selectAll();
        return Message.success(null).add(inintTeachingTodoList(teachingTodoList));
    }

    private List<TeachingTodo> inintTeachingTodoList(List<TeachingTodo> teachingTodoList){
        for (TeachingTodo teachingTodo:teachingTodoList){
            String finalName ="";
            if (teachingTodo.getTeachingTodoRelatedPersonnel()!=null){
                String ids[] = teachingTodo.getTeachingTodoRelatedPersonnel().split(";");
                if (ids.length>0){
                    for (String idtostring:ids){
                        String staffName = staffMapper.selectByPrimaryKey(Integer.parseInt(idtostring)).getStaffName();
                        finalName = finalName+staffName+";";
                    }
                }
            }
            if (finalName.equals(""))
            teachingTodo.setTeachingTodoRelatedPersonnelName("暂无相关人员");
            else teachingTodo.setTeachingTodoRelatedPersonnelName(finalName);
        }
        return teachingTodoList;
    }
    @Override
    public Message selectAllByTeachingTodoUrgency(Integer teachingTodoUrgency) {
        return Message.success(null).add(teachingTodoMapper.selectAllByTeachingTodoUrgency(teachingTodoUrgency));
    }

    @Override
    public Message selectAllByTeachingTodoType(Integer teachingTodoType) {
        return Message.success(null).add(teachingTodoMapper.selectAllByTeachingTodoType(teachingTodoType));
    }

    @Override
    public Message selectAllByTeachingTodoStatus(Integer teachingTodoStatus) {
        return Message.success(null).add(teachingTodoMapper.selectAllByTeachingTodoStatus(teachingTodoStatus));
    }

    @Override
    public Message selectAllByTeachingTodoPostUserId(Integer teachingTodoPostUserId) {
        return Message.success(null).add(teachingTodoMapper.selectAllByTeachingTodoPostUserId(teachingTodoPostUserId));
    }

    @Override
    public Message updateTeachingTodoStatusByTeachingTodoId(Integer updatedTeachingTodoStatus,Integer teachingTodoId) {
        return teachingTodoMapper.updateTeachingTodoStatusByTeachingTodoId(updatedTeachingTodoStatus,teachingTodoId)>0?Message.success(null):Message.fail(null);
    }

    @Override
    public Message batchInsert(List<TeachingTodo> list) {
        return teachingTodoMapper.batchInsert(list)>0?Message.success(null):Message.fail(null);
    }

}
